home *** CD-ROM | disk | FTP | other *** search
/ Nebula 2 / Nebula Two.iso / SourceCode / MiscKit1.7.1 / MiscKitArchive.mbox / mbox / 000103_yackd@alaska.et.byu.edu_Tue Feb 1 14:39 MST 1994.msg < prev    next >
Internet Message Format  |  1994-10-30  |  5KB

  1. Received: from yvax.byu.edu by maine.et.byu.edu; Tue, 1 Feb 1994 14:39:42 -0700
  2. Return-Path: <yackd@alaska.et.byu.edu>
  3. Received: from DIRECTORY-DAEMON by yvax.byu.edu (PMDF V4.3-3 #4169)
  4.  id <01H8DI57FFDC02HXLO@yvax.byu.edu>; Tue, 1 Feb 1994 14:39:20 MST
  5. Received: from alaska.et.byu.edu by yvax.byu.edu (PMDF V4.3-3 #4169)
  6.  id <01H8DI4ATV4002I1QC@yvax.byu.edu>; Tue, 1 Feb 1994 14:38:35 MST
  7. Received: from yvax.byu.edu by alaska.et.byu.edu; Tue, 1 Feb 1994 14:37:31 -0700
  8. Received: from DIRECTORY-DAEMON by yvax.byu.edu (PMDF V4.3-3 #4169)
  9.  id <01H8DI2L8Z1S02HXSD@yvax.byu.edu>; Tue, 1 Feb 1994 14:37:12 MST
  10. Received: from alaska.et.byu.edu by yvax.byu.edu (PMDF V4.3-3 #4169)
  11.  id <01H8DI2DJX3402HZCF@yvax.byu.edu>; Tue, 1 Feb 1994 14:37:02 MST
  12. Received: by alaska.et.byu.edu; Tue, 1 Feb 1994 14:36:51 -0700
  13. Date: Tue, 01 Feb 1994 14:36:51 -0700
  14. From: yackd@alaska.et.byu.edu (Don Yacktman)
  15. Subject: Re: how about a misckit MiscDocument object?
  16. To: misckit@byu.edu
  17. Message-Id: <9402012136.AA24956@alaska.et.byu.edu>
  18. Content-Transfer-Encoding: 7BIT
  19. Status: RO
  20.  
  21.  
  22. > I wonder if anyone has given any thoughts to writing some sort of
  23. > MiscDocument object to facilitate the writing of multi-window
  24. > multi-document applications.
  25.  
  26. I have!  :-)  I've come up with quite a few miscellaneous ideas
  27. about what I'd like to see and how I'd go about getting them to
  28. happen.  However, I'm pretty busy with a lot of things right now
  29. so I haven't got around to documenting any of these ideas...
  30.  
  31. > [...ideas...]
  32.  
  33. That's pretty close to what I was thinking of.  You have a
  34. DocumentController object to handle the top level stuff, like
  35. creating new documents and keeping track of opened documents.
  36. It would also keep the menu items up to date (enable/disable),
  37. querying the active document if necessary.  It might also be
  38. nice to have some hooks in it that work with the up and
  39. coming inspector stuff so that it is easy to have an inspector
  40. that is dynamically kept up to date.
  41.  
  42. Next level down is a Document class that contains all the
  43. things necessary for a document to do it's thing; the controller
  44. is in the main .nib, but the Document is in the .nib loaded
  45. to create a new document.  It has a delegate that can load
  46. and save a file, given a file name.  Probably you want to
  47. also specify a file type to save as...and whether or not to
  48. keep a backup file (the xxx~ stuff).  Actually, that could be
  49. handled by the Document class itself.  Maybe the best way to
  50. do this is to have the delegate respond to:
  51.  
  52. - saveDataType:(int)typeTag toStream:(NXStream *)aStream;
  53. - loadDataType:(int)typeTag fromStream:(NXStream *)aStream;
  54.  
  55. We might need a couple of other delegate methods to make sure
  56. that the document can be made key (the delegate would forward
  57. this to the appropriate view if it isn't a view, for example)
  58. and other such things, maybe a -finishLoading type of method
  59. or something like that, to init a document that's just been
  60. loaded from disk.
  61.  
  62. So, yes, I have given it a little thought.  For reference you
  63. might find the FileSaverAndRetriever object (or something akin
  64. to that name) on ftp.alleg.edu somewhat interesting.  It's
  65. more or less the Document class mentioned above, with a delegate
  66. to handle the guts of load/save.  I think a little more could
  67. be added to it, though.
  68.  
  69. Well, the Info men and Preferences systems are my priority at
  70. the moment.  If I finish them before someone starts on this
  71. project, then I'll take up this one next.  If someone wants to
  72. write these guys now, go right ahead.  (Steve?  :-)  )  I'd be
  73. happy to lend what little assistance I can to the effort.
  74.  
  75. > In the MiscKit Authors.rtf file, Don says he's working on a
  76. > MiscInfoController.  That would blend in very nicely with something
  77. > like a MiscDocumentController.
  78.  
  79. Yup.  Info, Prefs, Docs, all very useful extensions of the
  80. AppKit.  The sort of thing you'd have thought would be in
  81. there already with a name like "AppKit".  Well, I guess they
  82. need a "some assembly required" label.  :-)  (Truer than some
  83. suspect, when you have to go in and disassemble bits of the
  84. AppKit to figure out how to subclass a class that NeXT didn't
  85. document very well... :-(   )
  86.  
  87. Well, let's put this on the To-Do list, then.
  88.  
  89. Or the in progress list; that would b even better.  :-)
  90.  
  91. > P.S. Thank you Don for the latest release of the kit!  MiscString
  92. > in particular is saving me a lot of time.
  93.  
  94. It's a pleasure!  I'm really glad to see it help someone besides
  95. me.  Believe me, all my major (and even not so major) projects
  96. link against the MiscKit.  It permeates all my stuff...and the
  97. whole reason for making it public is so that others can benefit
  98. as I have.  :-)  Oh, and with all the contributions that have
  99. come in, I think the level of benefit to everyone will increase
  100. dramatically.  I'm now accepting submissions for the next release,
  101. so let's have 'em, eh?
  102.  
  103. Later,
  104. -don